Skip to content

Conversation

@stwiname
Copy link
Collaborator

@stwiname stwiname commented Dec 14, 2025

Description

  • Update to the most recent MCP sdk and fix breaking changes
  • Lock down MCP sdk version because minor versions include breaking changes
  • Fix ethers import so that it doesn't cause issues with different versions

Fixes # (issue)

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Checklist

  • I have tested locally
  • I have performed a self review of my changes
  • Updated any relevant documentation
  • Linked to any relevant issues
  • I have added tests relevant to my changes
  • Any dependent changes have been merged and published in downstream modules
  • My code is up to date with the base branch
  • I have updated relevant changelogs. We suggest using chan

Summary by CodeRabbit

  • Dependencies

    • Updated @modelcontextprotocol/sdk from ^1.17.2 to 1.24.3.
  • Improvements

    • Standardized tool identifier naming across CLI commands (colon → dot delimiter).
    • Enhanced form input handling and adjusted logging payload to send cleaned data.
    • Removed a server description field from initialization metadata.
  • Bug Fixes

    • Noted fix for an Ethers import issue documented in changelog.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Dec 14, 2025

Walkthrough

Updated MCP SDK to v1.24.3 and adapted CLI code: type imports and logging payload changed, elicitInput now uses mode 'form', MCP server description commented out, and many MCP tool registration keys switched from colon-delimited to dot-delimited identifiers.

Changes

Cohort / File(s) Summary
SDK & Dependency
packages/cli/package.json
@modelcontextprotocol/sdk updated from ^1.17.2 to 1.24.3 (caret removed).
SDK Type & API Updates
packages/cli/src/adapters/utils.ts
Replace ElicitRequest import with ElicitRequestFormParams; adjust makeInputSchema return type; MCP logger payload uses data instead of message; makeMCPElicitPrompt passes mode: 'form' to elicitInput.
MCP Server Options
packages/cli/src/commands/mcp.ts
Description property in MCP server initialization options commented out (removed from metadata).
Tool Registration: network
packages/cli/src/commands/network/*.ts (e.g., add-deployment-boost.ts, connect-wallet.ts, create-api-key.ts, create-deployment.ts, create-flex-plan.ts, create-project.ts, disconnect-wallet.ts, list-account-boosts.ts, list-api-keys.ts, list-deployment-boosts.ts, list-deployment-indexers.ts, list-deployments.ts, list-flex-plans.ts, list-projects.ts, remove-api-key.ts, remove-deployment-boost.ts, stop-flex-plan.ts, swap-deployment-boost.ts)
Tool registration identifiers changed from network:${CommandName.name} to network.${CommandName.name}. swap-deployment-boost.ts also adjusted log message formatting.
Tool Registration: onfinality
packages/cli/src/commands/onfinality/*.ts (e.g., create-deployment.ts, create-multichain-deployment.ts, create-project.ts, delete-deployment.ts, delete-project.ts, promote-deployment.ts)
Tool registration identifiers changed from onfinality:${CommandName.name} to onfinality.${CommandName.name}.
Tool Registration: multi-chain
packages/cli/src/commands/multi-chain/add.ts
Tool registration key changed from multichain:${MultiChainAdd.name} to multichain.${MultiChainAdd.name}.
Utility Import Fix
packages/cli/src/controller/network/constants.ts
Import source for formatUnits changed from ethers/lib/utils to @ethersproject/units.
Changelog
packages/cli/CHANGELOG.md
Added Unreleased entries documenting an Ethers import fix and MCP SDK update/lock.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

  • Reasons: Many repetitive string edits (low per-file complexity) plus a few API-level changes that need careful verification.
  • Files needing extra attention:
    • packages/cli/src/adapters/utils.ts — type changes, logging payload field change, and mode: 'form' parameter; confirm compatibility with SDK v1.24.3.
    • packages/cli/package.json — confirm pinned SDK version is intended and check release notes for breaking changes.
    • Consistency check across all registerTool calls to ensure dot-delimiter usage is uniform and any consumers/provider mappings are updated.

Poem

🐰 I nibbled at colons, then dotted my way,
SDK upgraded, a bright new day,
Tools renamed tidy, imports neatly spun,
Logs now speak data, the migration's done,
Hopping through code — a small, happy run ✨

Pre-merge checks and finishing touches

❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
Title check ❓ Inconclusive The title 'Fix CLI mcp' is vague and generic, using non-descriptive terms that don't convey meaningful information about the changeset's primary objectives. Consider using a more specific title that captures the main work: e.g., 'Update MCP SDK and fix breaking changes' or 'Update MCP SDK to 1.24.3 and fix breaking changes'.
✅ Passed checks (1 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch mcp-update

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (3)
packages/cli/src/adapters/utils.ts (2)

245-287: required parameter is ignored in makeInputSchema (always requires input).

makeInputSchema(type, required, ...) always returns required: ['input'], so callers can’t create an optional elicitation field even if they pass required: false/undefined. With MCP “form” mode, this is more likely to be enforced client-side.

 export function makeInputSchema<T extends keyof PromptTypes>(
   type: T,
   required?: boolean,
   mmultiple?: boolean,
   options?: PromptTypes[T][],
   defaultValue?: PromptTypes[T]
 ): ElicitRequestFormParams['requestedSchema'] {
   if (type === 'string') {
     return {
       type: 'object',
       properties: {
         input: {
           type: 'string',
           default: defaultValue as PromptTypes['string'],
           enum: options as string[] | undefined,
           description: 'Input string',
         },
       },
-      required: ['input'],
+      ...(required ? {required: ['input']} : {}),
       // additionalProperties: false,
     };
   } else {
     throw new Error(`Unsupported prompt type: ${type}`);
   }
 }

289-296: elicitInput({ mode: 'form' }) is correct for SDK 1.24.3, but the schema builder doesn't support boolean/number types.

The mode: 'form' is confirmed as the correct mode for SDK 1.24.3, and res.content?.input correctly matches the schema's properties.input field. However, makeInputSchema() only implements the 'string' type branch (lines 252-265) and throws an error for any other type. This creates a critical runtime failure because makeMCPElicitPrmompt() attempts to handle 'boolean' and 'number' types (lines 313-320), but the schema builder will never provide those schemas.

Additionally:

  • Function name has typo: "makeMCPElicitPrmompt" should be "makeMCPElicitPrompt"
  • Parameter name typo on line 248: "mmultiple" should be "multiple"

Complete the makeInputSchema() function by uncommenting and fixing the 'boolean' and 'number' branches (currently lines 266-283), or remove the type handling code if only strings are supported.

packages/cli/src/commands/network/swap-deployment-boost.ts (1)

50-53: Use native BigInt comparison operators, not BigNumber .lte() method (Ethers v6).

The code uses .lte(0n) which is the Ethers v5 BigNumber API. The repository guidelines specify using Ethers.js (v6), where parseEther() returns native JavaScript bigint that doesn't have .lte() method. Use amount > 0n instead.

Also applies to: 76-79, 99-112

🧹 Nitpick comments (1)
packages/cli/src/commands/mcp.ts (1)

49-50: Consider removing commented code.

The commented-out description property likely reflects a breaking change in the MCP SDK upgrade. Unless there's a plan to restore this functionality in a future SDK version, consider removing the commented code entirely to keep the codebase clean.

Apply this diff to remove the commented code:

       {
         name: 'SubQuery CLI',
         version: pjson.version,
-        // description:
-        //   'Interact with SubQuery CLI commands using Model Context Protocol. This allows you to initialize, build and deploy your SubQuery projects.',
       },
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8512316 and 125c9d3.

⛔ Files ignored due to path filters (1)
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (29)
  • packages/cli/package.json (1 hunks)
  • packages/cli/src/adapters/utils.ts (5 hunks)
  • packages/cli/src/commands/mcp.ts (1 hunks)
  • packages/cli/src/commands/multi-chain/add.ts (1 hunks)
  • packages/cli/src/commands/network/add-deployment-boost.ts (1 hunks)
  • packages/cli/src/commands/network/connect-wallet.ts (1 hunks)
  • packages/cli/src/commands/network/create-api-key.ts (1 hunks)
  • packages/cli/src/commands/network/create-deployment.ts (1 hunks)
  • packages/cli/src/commands/network/create-flex-plan.ts (1 hunks)
  • packages/cli/src/commands/network/create-project.ts (1 hunks)
  • packages/cli/src/commands/network/disconnect-wallet.ts (1 hunks)
  • packages/cli/src/commands/network/list-account-boosts.ts (1 hunks)
  • packages/cli/src/commands/network/list-api-keys.ts (1 hunks)
  • packages/cli/src/commands/network/list-deployment-boosts.ts (1 hunks)
  • packages/cli/src/commands/network/list-deployment-indexers.ts (1 hunks)
  • packages/cli/src/commands/network/list-deployments.ts (1 hunks)
  • packages/cli/src/commands/network/list-flex-plans.ts (1 hunks)
  • packages/cli/src/commands/network/list-projects.ts (1 hunks)
  • packages/cli/src/commands/network/remove-api-key.ts (1 hunks)
  • packages/cli/src/commands/network/remove-deployment-boost.ts (1 hunks)
  • packages/cli/src/commands/network/stop-flex-plan.ts (1 hunks)
  • packages/cli/src/commands/network/swap-deployment-boost.ts (1 hunks)
  • packages/cli/src/commands/onfinality/create-deployment.ts (1 hunks)
  • packages/cli/src/commands/onfinality/create-multichain-deployment.ts (1 hunks)
  • packages/cli/src/commands/onfinality/create-project.ts (1 hunks)
  • packages/cli/src/commands/onfinality/delete-deployment.ts (1 hunks)
  • packages/cli/src/commands/onfinality/delete-project.ts (1 hunks)
  • packages/cli/src/commands/onfinality/promote-deployment.ts (1 hunks)
  • packages/cli/src/controller/network/constants.ts (1 hunks)
🧰 Additional context used
📓 Path-based instructions (4)
**/*.{ts,tsx}

📄 CodeRabbit inference engine (CLAUDE.md)

**/*.{ts,tsx}: Use TypeScript throughout with strict configuration in the monorepo
Use Ethers.js for Ethereum integration

Files:

  • packages/cli/src/commands/network/remove-api-key.ts
  • packages/cli/src/commands/network/list-deployment-indexers.ts
  • packages/cli/src/commands/onfinality/delete-deployment.ts
  • packages/cli/src/commands/network/list-deployments.ts
  • packages/cli/src/controller/network/constants.ts
  • packages/cli/src/commands/network/create-api-key.ts
  • packages/cli/src/commands/network/stop-flex-plan.ts
  • packages/cli/src/commands/network/connect-wallet.ts
  • packages/cli/src/commands/network/create-deployment.ts
  • packages/cli/src/commands/network/create-flex-plan.ts
  • packages/cli/src/commands/network/create-project.ts
  • packages/cli/src/commands/network/list-account-boosts.ts
  • packages/cli/src/commands/network/remove-deployment-boost.ts
  • packages/cli/src/commands/onfinality/create-project.ts
  • packages/cli/src/adapters/utils.ts
  • packages/cli/src/commands/network/list-projects.ts
  • packages/cli/src/commands/multi-chain/add.ts
  • packages/cli/src/commands/network/list-flex-plans.ts
  • packages/cli/src/commands/network/disconnect-wallet.ts
  • packages/cli/src/commands/network/swap-deployment-boost.ts
  • packages/cli/src/commands/network/add-deployment-boost.ts
  • packages/cli/src/commands/network/list-api-keys.ts
  • packages/cli/src/commands/onfinality/create-deployment.ts
  • packages/cli/src/commands/onfinality/delete-project.ts
  • packages/cli/src/commands/network/list-deployment-boosts.ts
  • packages/cli/src/commands/mcp.ts
  • packages/cli/src/commands/onfinality/promote-deployment.ts
  • packages/cli/src/commands/onfinality/create-multichain-deployment.ts
packages/cli/src/commands/**/*.ts

📄 CodeRabbit inference engine (CLAUDE.md)

packages/cli/src/commands/**/*.ts: Use OCLIF framework for CLI commands with consistent structure including input validation using Zod schemas, adapter functions, structured logging, and progress indication using ora spinner
Use WalletConnect for wallet interactions in CLI commands

Files:

  • packages/cli/src/commands/network/remove-api-key.ts
  • packages/cli/src/commands/network/list-deployment-indexers.ts
  • packages/cli/src/commands/onfinality/delete-deployment.ts
  • packages/cli/src/commands/network/list-deployments.ts
  • packages/cli/src/commands/network/create-api-key.ts
  • packages/cli/src/commands/network/stop-flex-plan.ts
  • packages/cli/src/commands/network/connect-wallet.ts
  • packages/cli/src/commands/network/create-deployment.ts
  • packages/cli/src/commands/network/create-flex-plan.ts
  • packages/cli/src/commands/network/create-project.ts
  • packages/cli/src/commands/network/list-account-boosts.ts
  • packages/cli/src/commands/network/remove-deployment-boost.ts
  • packages/cli/src/commands/onfinality/create-project.ts
  • packages/cli/src/commands/network/list-projects.ts
  • packages/cli/src/commands/multi-chain/add.ts
  • packages/cli/src/commands/network/list-flex-plans.ts
  • packages/cli/src/commands/network/disconnect-wallet.ts
  • packages/cli/src/commands/network/swap-deployment-boost.ts
  • packages/cli/src/commands/network/add-deployment-boost.ts
  • packages/cli/src/commands/network/list-api-keys.ts
  • packages/cli/src/commands/onfinality/create-deployment.ts
  • packages/cli/src/commands/onfinality/delete-project.ts
  • packages/cli/src/commands/network/list-deployment-boosts.ts
  • packages/cli/src/commands/mcp.ts
  • packages/cli/src/commands/onfinality/promote-deployment.ts
  • packages/cli/src/commands/onfinality/create-multichain-deployment.ts
packages/**/src/**/*.{ts,tsx}

📄 CodeRabbit inference engine (CLAUDE.md)

Run ESLint with TypeScript support, Prettier, and various plugins across all TypeScript files using configured husky pre-commit hooks and lint-staged

Files:

  • packages/cli/src/commands/network/remove-api-key.ts
  • packages/cli/src/commands/network/list-deployment-indexers.ts
  • packages/cli/src/commands/onfinality/delete-deployment.ts
  • packages/cli/src/commands/network/list-deployments.ts
  • packages/cli/src/controller/network/constants.ts
  • packages/cli/src/commands/network/create-api-key.ts
  • packages/cli/src/commands/network/stop-flex-plan.ts
  • packages/cli/src/commands/network/connect-wallet.ts
  • packages/cli/src/commands/network/create-deployment.ts
  • packages/cli/src/commands/network/create-flex-plan.ts
  • packages/cli/src/commands/network/create-project.ts
  • packages/cli/src/commands/network/list-account-boosts.ts
  • packages/cli/src/commands/network/remove-deployment-boost.ts
  • packages/cli/src/commands/onfinality/create-project.ts
  • packages/cli/src/adapters/utils.ts
  • packages/cli/src/commands/network/list-projects.ts
  • packages/cli/src/commands/multi-chain/add.ts
  • packages/cli/src/commands/network/list-flex-plans.ts
  • packages/cli/src/commands/network/disconnect-wallet.ts
  • packages/cli/src/commands/network/swap-deployment-boost.ts
  • packages/cli/src/commands/network/add-deployment-boost.ts
  • packages/cli/src/commands/network/list-api-keys.ts
  • packages/cli/src/commands/onfinality/create-deployment.ts
  • packages/cli/src/commands/onfinality/delete-project.ts
  • packages/cli/src/commands/network/list-deployment-boosts.ts
  • packages/cli/src/commands/mcp.ts
  • packages/cli/src/commands/onfinality/promote-deployment.ts
  • packages/cli/src/commands/onfinality/create-multichain-deployment.ts
**/package.json

📄 CodeRabbit inference engine (CLAUDE.md)

Use the Yarn workspace protocol (workspace:~) for internal package dependencies

Files:

  • packages/cli/package.json
🧠 Learnings (3)
📚 Learning: 2025-11-25T02:34:46.620Z
Learnt from: CR
Repo: subquery/subql PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-25T02:34:46.620Z
Learning: Applies to **/*.{ts,tsx} : Use Ethers.js for Ethereum integration

Applied to files:

  • packages/cli/src/controller/network/constants.ts
📚 Learning: 2025-11-25T02:34:46.620Z
Learnt from: CR
Repo: subquery/subql PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-25T02:34:46.620Z
Learning: Applies to packages/cli/src/commands/**/*.ts : Use WalletConnect for wallet interactions in CLI commands

Applied to files:

  • packages/cli/src/controller/network/constants.ts
  • packages/cli/src/commands/network/connect-wallet.ts
  • packages/cli/src/commands/network/disconnect-wallet.ts
📚 Learning: 2025-11-25T02:34:46.620Z
Learnt from: CR
Repo: subquery/subql PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-25T02:34:46.620Z
Learning: Applies to packages/cli/src/commands/**/*.ts : Use OCLIF framework for CLI commands with consistent structure including input validation using Zod schemas, adapter functions, structured logging, and progress indication using ora spinner

Applied to files:

  • packages/cli/src/adapters/utils.ts
🧬 Code graph analysis (2)
packages/cli/src/commands/onfinality/create-project.ts (1)
packages/cli/src/types.ts (1)
  • CreateProject (64-75)
packages/cli/src/commands/network/swap-deployment-boost.ts (2)
packages/cli/src/controller/network/constants.ts (1)
  • formatSQT (162-164)
packages/cli/src/adapters/utils.ts (1)
  • MCPToolOptions (450-455)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: code-style
  • GitHub Check: Coverage report
🔇 Additional comments (29)
packages/cli/src/commands/multi-chain/add.ts (1)

46-46: Change is verified as consistent with all MCP tool registrations across the codebase.

The delimiter change from colon to dot at line 46 aligns correctly with the MCP SDK upgrade to version 1.24.3. All existing MCP tool registrations in the codebase already use the dot-delimited pattern (e.g., network.${CreateNetworkApiKey.name}, onfinality.${PromoteDeployment.name}), confirming consistency. The MCP SDK version is properly locked to 1.24.3 in packages/cli/package.json.

packages/cli/src/commands/onfinality/delete-deployment.ts (1)

44-44: Tool registration key correctly updated to dot notation for MCP SDK compatibility.

The change at line 44 from colon to dot delimiter (onfinality.${DeleteDeployment.name}) is correct and aligns with the consistent pattern used across all other tool registrations in the codebase. All onfinality commands use the onfinality. prefix and all network commands use the network. prefix with dot notation. No colon-delimited formats remain.

packages/cli/src/controller/network/constants.ts (1)

5-5: LGTM! Improved import specificity.

The change from ethers/lib/utils to @ethersproject/units provides better version compatibility and avoids potential conflicts with different ethers versions, as mentioned in the PR objectives.

packages/cli/src/commands/network/list-deployments.ts (1)

59-59: LGTM! Tool registration key updated for MCP SDK compatibility.

The tool registration key format change from colon to dot delimiter (network:network.) aligns with the MCP SDK upgrade breaking changes. This change is consistent across all command files in this PR.

packages/cli/src/commands/network/create-deployment.ts (1)

112-112: LGTM! Consistent tool registration key update.

The tool registration key format aligns with the MCP SDK upgrade requirements.

packages/cli/src/commands/network/connect-wallet.ts (1)

60-60: LGTM! Consistent tool registration key update.

The tool registration key format aligns with the MCP SDK upgrade requirements.

packages/cli/src/commands/network/list-flex-plans.ts (1)

83-83: LGTM! Consistent tool registration key update.

The tool registration key format aligns with the MCP SDK upgrade requirements.

packages/cli/src/commands/onfinality/create-deployment.ts (1)

134-134: LGTM! Consistent tool registration key update.

The tool registration key format aligns with the MCP SDK upgrade requirements, applied consistently to the onfinality namespace.

packages/cli/src/commands/network/list-deployment-indexers.ts (1)

73-73: LGTM! Consistent tool registration key update.

The tool registration key format aligns with the MCP SDK upgrade requirements.

packages/cli/package.json (1)

10-18: Pin looks right; verify lockfile + workspace consistency for MCP SDK.

Since this changes an external dependency contract, please confirm yarn.lock (or your lockfile) reflects @modelcontextprotocol/sdk@1.24.3 and that no other workspace package pulls a conflicting version/range.

packages/cli/src/commands/network/list-projects.ts (1)

79-92: Tool id delimiter change is fine, but it’s an externally breaking identifier.

Please verify any consumers (docs, tests, integrations) that call network:${...} have been migrated to network.${...}, and consider centralizing tool-id construction to avoid repeating this change everywhere.

packages/cli/src/commands/network/create-project.ts (1)

189-204: Confirm CreateNetworkProject.name matches the intended published MCP tool id.

Please sanity-check the runtime tool list (post-build) to ensure the registered id is exactly what you expect (and that any prior network:${...} references are updated).

packages/cli/src/commands/network/add-deployment-boost.ts (1)

98-112: Looks consistent with the new MCP tool naming; verify no collisions and callers updated.

Please confirm network.${AddDeploymentBoost.name} doesn’t collide with any other registered tool id and that any clients using the old colon-delimited id have been migrated.

packages/cli/src/commands/network/disconnect-wallet.ts (1)

69-82: Tool id change is fine; ensure MCP callers/docs were updated accordingly.

Given this changes the externally referenced tool identifier, please confirm any MCP prompts/tests/docs that refer to network:${DisconnectWallet.name} now use network.${DisconnectWallet.name}.

packages/cli/src/commands/network/list-account-boosts.ts (1)

75-88: Consistent delimiter migration; consider a shared helper for tool ids.

Please verify all MCP tool invocations now reference the dot-delimited ids, and consider extracting something like makeNetworkToolId(CommandClass) to reduce churn.

packages/cli/src/commands/network/list-deployment-boosts.ts (1)

58-70: Delimiter migration OK; verify compatibility with MCP SDK 1.24.3 expectations.

Please confirm MCP SDK registerTool discovery/calling works end-to-end with the dot-delimited id for this command (and that no leftover colon-delimited callers remain).

packages/cli/src/commands/network/list-api-keys.ts (1)

60-73: Tool id change is consistent; ensure any automation/scripts calling it are updated.

Please check any recorded MCP tool calls (CI scripts, docs, examples) for the old network:${ListNetworkApiKeys.name} id and update to the dot-delimited form.

packages/cli/src/commands/network/create-api-key.ts (1)

60-72: Consistent tool ID update (network.*).

packages/cli/src/commands/network/remove-deployment-boost.ts (1)

86-98: Consistent tool ID update (network.*).

packages/cli/src/commands/network/create-flex-plan.ts (1)

118-131: Consistent tool ID update (network.*).

packages/cli/src/commands/onfinality/create-multichain-deployment.ts (1)

193-212: Consistent tool ID update (onfinality.*).

packages/cli/src/commands/network/stop-flex-plan.ts (1)

69-81: Consistent tool ID update (network.*).

packages/cli/src/commands/network/remove-api-key.ts (1)

65-77: Consistent tool ID update (network.*).

packages/cli/src/commands/onfinality/create-project.ts (1)

75-87: Consistent tool ID update (onfinality.*).

packages/cli/src/commands/onfinality/promote-deployment.ts (1)

53-65: Tool ID uses correct dot-delimited format per MCP specification. Repo verification confirms no colon-delimited tool IDs remain in registerTool calls, and the dot-delimited pattern is already applied consistently across all related commands (network., onfinality.). The MCP spec requires tool names to use only letters, digits, underscore, hyphen, and dot—colons are not valid. The change aligns with the specification and introduces no breaking changes since colon-delimited IDs were never used in this codebase.

packages/cli/src/commands/network/swap-deployment-boost.ts (1)

99-112: Tool identifier delimiter change is complete and consistent. The move to network.<ToolName> is properly implemented across all network tools with no remaining network: registrations or consumers expecting the old format.

packages/cli/src/adapters/utils.ts (2)

9-15: Type import from @modelcontextprotocol/sdk/types resolves correctly as-is; no action required.

The import at line 14 works without the .js suffix despite other MCP SDK imports (server/mcp.js, server/stdio.js) using it. This is expected behavior—the types entrypoint resolves correctly under the "node" module resolution setting with esModuleInterop: true. The inconsistency in .js suffixes between types and server module imports is intentional and reflects how the MCP SDK exports these modules differently.


189-201: MCP logging payload structure is correct. The sendLoggingMessage call uses the correct field name data (not message) for @modelcontextprotocol/sdk@1.24.3. The SDK signature expects { level, data, logger? }, which matches the implementation. No consistency issues exist—this is the only callsite in the codebase.

packages/cli/src/commands/onfinality/delete-project.ts (1)

38-57: Tool identifier delimiter is consistently applied using dot notation across all onfinality commands.

Verification confirms the codebase uses the new dot-delimited format (onfinality.) consistently across all six onfinality tool registrations (CreateDeployment, CreateMultichainDeployment, CreateProject, DeleteProject, DeleteDeployment, PromoteDeployment). No colon-delimited identifiers (onfinality:) exist anywhere in the repository. The change aligns with MCP SDK version 1.24.3 and appears complete within the codebase. However, verify that external clients and published documentation also reflect this format change, as those cannot be validated from the repository alone.

Comment on lines 91 to 95
this.log(
`Swapped boost (${formatSQT(result.amount)}) from deployment: ${flags.fromDeploymentId} to deployment ${flags.toDeploymentId}. TransactionHash: ${result.transactionHash}`
`Swapped boost (${formatSQT(result.amount)}) from deployment: ${flags.fromDeploymentId} to deployment ${
flags.toDeploymentId
}. TransactionHash: ${result.transactionHash}`
);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Template literal now likely prints newlines/spaces in CLI output.

Because the string is split across lines inside the template literal, the output will include a newline + indentation before flags.toDeploymentId. If you want a single-line log, keep the template literal on one line (or build the string via concatenation).

-    this.log(
-      `Swapped boost (${formatSQT(result.amount)}) from deployment: ${flags.fromDeploymentId} to deployment ${
-        flags.toDeploymentId
-      }. TransactionHash: ${result.transactionHash}`
-    );
+    this.log(
+      `Swapped boost (${formatSQT(result.amount)}) from deployment: ${flags.fromDeploymentId} to deployment ${flags.toDeploymentId}. TransactionHash: ${result.transactionHash}`
+    );
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
this.log(
`Swapped boost (${formatSQT(result.amount)}) from deployment: ${flags.fromDeploymentId} to deployment ${flags.toDeploymentId}. TransactionHash: ${result.transactionHash}`
`Swapped boost (${formatSQT(result.amount)}) from deployment: ${flags.fromDeploymentId} to deployment ${
flags.toDeploymentId
}. TransactionHash: ${result.transactionHash}`
);
this.log(
`Swapped boost (${formatSQT(result.amount)}) from deployment: ${flags.fromDeploymentId} to deployment ${flags.toDeploymentId}. TransactionHash: ${result.transactionHash}`
);
🤖 Prompt for AI Agents
In packages/cli/src/commands/network/swap-deployment-boost.ts around lines 91 to
95, the template literal is split across lines which inserts a newline and
spaces into the CLI output; change the log to produce a single-line string by
either putting the entire template literal on one line or by concatenating parts
(e.g. build the message with + or use a single-line template literal) so
flags.toDeploymentId is printed without the embedded newline/indentation.

@github-actions
Copy link
Contributor

github-actions bot commented Dec 15, 2025

Coverage report for .

St.
Category Percentage Covered / Total
🟢 Statements
87.48% (+17.37% 🔼)
70917/81066
🟡 Branches
79.51% (+1.22% 🔼)
3283/4129
🟡 Functions
66.74% (+4.24% 🔼)
1274/1909
🟢 Lines
87.48% (+17.37% 🔼)
70917/81066
Show new covered files 🐣
St.
File Statements Branches Functions Lines
🔴
... / utils.ts
46.68% 74.07% 35.71% 46.68%
🔴
... / build-manifest.ts
42.47% 100% 25% 42.47%
🟡
... / build.ts
68.82% 70% 75% 68.82%
🟡
... / import-abi.ts
71.28% 48% 75% 71.28%
🔴
... / mcp.ts
33.33% 100% 0% 33.33%
🟢
... / migrate.ts
81.37% 30% 75% 81.37%
🔴
... / add-deployment-boost.ts
45.54% 100% 0% 45.54%
🔴
... / connect-wallet.ts
50.68% 100% 25% 50.68%
🔴
... / create-api-key.ts
50.68% 100% 25% 50.68%
🔴
... / create-deployment.ts
41.73% 100% 0% 41.73%
🔴
... / create-flex-plan.ts
38.64% 100% 25% 38.64%
🔴
... / create-project.ts
32.35% 100% 0% 32.35%
🔴
... / disconnect-wallet.ts
41.46% 100% 25% 41.46%
🔴
... / list-account-boosts.ts
42.05% 100% 25% 42.05%
🔴
... / list-api-keys.ts
47.95% 100% 25% 47.95%
🔴
... / list-deployment-boosts.ts
42.86% 100% 25% 42.86%
🔴
... / list-deployment-indexers.ts
39.76% 100% 25% 39.76%
🔴
... / list-deployments.ts
42.03% 100% 25% 42.03%
🔴
... / list-flex-plans.ts
37.23% 100% 25% 37.23%
🔴
... / list-projects.ts
42.39% 100% 25% 42.39%
🔴
... / remove-api-key.ts
46.15% 100% 25% 46.15%
🔴
... / remove-deployment-boost.ts
47.47% 100% 0% 47.47%
🔴
... / stop-flex-plan.ts
45.12% 100% 25% 45.12%
🔴
... / swap-deployment-boost.ts
46.02% 100% 0% 46.02%
🔴
... / create-deployment.ts
34.01% 100% 25% 34.01%
🔴
... / create-multichain-deployment.ts
30.99% 100% 25% 30.99%
🔴
... / create-project.ts
52.27% 100% 25% 52.27%
🔴
... / delete-deployment.ts
55.56% 100% 25% 55.56%
🔴
... / delete-project.ts
46.55% 100% 25% 46.55%
🔴
... / promote-deployment.ts
57.58% 100% 25% 57.58%
🟢
... / migrate-abis.controller.ts
95% 87.5% 100% 95%
🟢
... / constants.ts
100% 100% 100% 100%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / ethereum.ts
82.72% 83.33% 100% 82.72%
🟢
... / migrate-manifest.controller.ts
88.31% 73.33% 88.89% 88.31%
🟢
... / migrate-mapping.controller.ts
100% 100% 100% 100%
🟢
... / migrate-controller.ts
90.63% 83.33% 100% 90.63%
🟢
... / migrate.fixtures.ts
100% 100% 100% 100%
🟢
... / migrate-schema.controller.ts
97.23% 79.75% 100% 97.23%
🔴
... / types.ts
0% 0% 0% 0%
🟢
... / base-types.ts
100% 100% 100% 100%
🟢
... / deployments.generated.ts
100% 100% 100% 100%
🟢
... / deploymentsBooster.generated.ts
100% 100% 100% 100%
🔴
... / flexPlan.generated.ts
0% 0% 0% 0%
🟢
... / projects.generated.ts
100% 100% 100% 100%
🔴
... / constants.ts
40.24% 100% 0% 40.24%
🔴
... / client.ts
29.08% 100% 0% 29.08%
🔴
... / consumer-host-service-api.ts
44.1% 100% 0% 44.1%
🟡
... / schemas.ts
63.93% 100% 20% 63.93%
🔴
... / contract-errors.ts
0% 0% 0% 0%
🔴
... / json-file-store.ts
42.37% 100% 0% 42.37%
🔴
... / list-account-boosts.ts
41.18% 100% 0% 41.18%
🔴
... / list-deployment-boosts.ts
38.33% 100% 0% 38.33%
🔴
... / list-deployment-indexers.ts
46.6% 100% 0% 46.6%
🔴
... / list-deployments.ts
38.33% 100% 0% 38.33%
🔴
... / list-flex-plans.ts
45% 100% 0% 45%
🔴
... / list-projects.ts
46.55% 100% 0% 46.55%
🔴
... / utils.ts
18.18% 100% 0% 18.18%
🔴
... / walletconnect-signer.ts
24.53% 100% 0% 24.53%
🟢
... / createProject.fixtures.ts
95% 81.82% 100% 95%
🟢
... / config.ts
100% 100% 100% 100%
🟢
... / index.ts
100% 100% 100% 100%
🟡
... / moduleLoader.ts
60% 33.33% 100% 60%
🟢
... / types.ts
100% 100% 100% 100%
🟢
... / env.ts
93.75% 75% 100% 93.75%
🟢
... / etherscan.ts
92.5% 76.47% 100% 92.5%
🟢
... / jsonToTable.ts
93.44% 90.91% 100% 93.44%
🟢
... / networkFamily.ts
92.59% 88.89% 100% 92.59%
🟢
... / IPFSHTTPClientLite.ts
95.59% 80% 88.89% 95.59%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / utils.ts
92% 66.67% 100% 92%
🟢
... / admin.controller.ts
98.52% 96% 78.57% 98.52%
🟢
... / blockRange.ts
88.89% 100% 80% 88.89%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / blockchain.service.ts
100% 100% 100% 100%
🟢
... / SubqueryProject.ts
96.53% 83.33% 83.33% 96.53%
🟡
... / factory.ts
78.31% 66.67% 100% 78.31%
🟢
... / core.module.ts
100% 100% 100% 100%
🟢
... / dictionary.fixtures.ts
100% 100% 100% 100%
🟢
... / GlobalData.entity.ts
100% 100% 100% 100%
🟢
... / monitor.service.ts
93.97% 85.88% 96.97% 93.97%
🟢
... / multiChainRewind.service.ts
98.02% 91.67% 100% 98.02%
🔴
... / sandbox.service.ts
49.32% 50% 33.33% 49.32%
🟢
... / baseCache.service.ts
94.59% 91.67% 83.33% 94.59%
🟢
... / baseStoreModel.service.ts
93.22% 84.62% 100% 93.22%
🟢
... / cacheable.ts
89.29% 75% 100% 89.29%
🟢
... / csvStore.ts
91.67% 73.68% 100% 91.67%
🟢
... / exporter.ts
91.67% 71.43% 71.43% 91.67%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / global.ts
97.5% 92.59% 87.5% 97.5%
🔴
... / index.ts
0% 0% 0% 0%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / cacheMetadata.ts
86.96% 80.85% 92.86% 86.96%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / metadata.ts
86.75% 100% 66.67% 86.75%
🟢
... / utils.ts
100% 100% 100% 100%
🟢
... / cacheModel.ts
90.7% 86.05% 89.47% 90.7%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / model.ts
90% 73.91% 100% 90%
🟢
... / utils.ts
100% 100% 100% 100%
🟢
... / cachePoi.ts
95.79% 89.47% 100% 95.79%
🟢
... / index.ts
100% 100% 100% 100%
🔴
... / poi.ts
54.46% 71.43% 44.44% 54.46%
🟢
... / setValueModel.ts
85.26% 80% 78.57% 85.26%
🟢
... / storeCache.service.ts
84.18% 75.76% 83.33% 84.18%
🟡
... / storeModel.service.ts
74.73% 53.85% 71.43% 74.73%
🟢
... / types.ts
100% 100% 100% 100%
🟢
... / utils.ts
93.33% 66.67% 100% 93.33%
🟢
... / worker.core.module.ts
100% 100% 0% 100%
🔴
... / worker.monitor.service.ts
58.14% 100% 0% 58.14%
🟢
... / meta.controller.ts
86.67% 100% 0% 86.67%
🟡
... / meta.module.ts
60% 100% 0% 60%
🟢
... / process.ts
80.65% 57.14% 80% 80.65%
🔴
... / foreceClean.init.ts
47.62% 100% 0% 47.62%
🔴
... / reindex.init.ts
33.33% 100% 0% 33.33%
🟢
... / testing.core.module.ts
100% 100% 100% 100%
🟢
... / env.ts
87.76% 66.67% 100% 87.76%
🟢
... / autoQueue.ts
95.34% 90.2% 87.5% 95.34%
🟢
... / index.ts
100% 100% 100% 100%
🟢
... / queue.ts
87.5% 92.86% 83.33% 87.5%
🟢
... / rampQueue.ts
90.43% 81.82% 100% 90.43%
🟢
... / string.ts
100% 95.45% 100% 100%
🟡
... / blockchain.service.ts
63.27% 100% 57.14% 63.27%
🔴
... / datasourceProcessors.ts
0% 0% 0% 0%
🔴
... / index.ts
0% 0% 0% 0%
🔴
... / types.ts
0% 0% 0% 0%
🔴
... / networking.ts
31.58% 100% 0% 31.58%
Show files with reduced coverage 🔻
St.
File Statements Branches Functions Lines
🟡
... / index.ts
71.58% (-20.36% 🔻)
66.67% (+41.67% 🔼)
75% (-25% 🔻)
71.58% (-20.36% 🔻)
🔴
... / add.ts
48.44% (-13.63% 🔻)
100%
25% (+25% 🔼)
48.44% (-13.63% 🔻)
🟢
... / publish.ts
80.49% (-8.85% 🔻)
53.33% (-3.81% 🔻)
75% (-25% 🔻)
80.49% (-8.85% 🔻)
🔴
... / add-chain-controller.ts
40.07% (-0% 🔻)
66.67% 30%
40.07% (-0% 🔻)
🟢
... / build-controller.ts
90% (-1.3% 🔻)
59.09% (+1.95% 🔼)
100%
90% (-1.3% 🔻)
🟢
... / codegen-controller.ts
88.19% (-1.2% 🔻)
82.05% (+6.47% 🔼)
100%
88.19% (-1.2% 🔻)
🔴
... / deploy-controller.ts
54.19% (+16.73% 🔼)
72.73% (-5.05% 🔻)
56.25% (+31.25% 🔼)
54.19% (+16.73% 🔼)
🟢
... / generate-controller.ts
95.66% (-1.99% 🔻)
90.91% (-3.12% 🔻)
95.65% (-4.35% 🔻)
95.66% (-1.99% 🔻)
🟡
... / init-controller.ts
72.46% (+1.98% 🔼)
54.55% (-13.45% 🔻)
61.11% (+7.78% 🔼)
72.46% (+1.98% 🔼)
🟢
... / project-controller.ts
83.13% (-14.13% 🔻)
42.86% (-17.14% 🔻)
75% (-25% 🔻)
83.13% (-14.13% 🔻)
🟢
... / publish-controller.ts
82.63% (+2.38% 🔼)
67.5% (-3.61% 🔻)
100%
82.63% (+2.38% 🔼)
🟢
... / http.ts
90.63% (-2.92% 🔻)
75% (+8.33% 🔼)
100%
90.63% (-2.92% 🔻)
🟡
... / utils.ts
76.15% (-4.93% 🔻)
82.14% (+1.44% 🔼)
83.87% (+6.6% 🔼)
76.15% (-4.93% 🔻)
🟢
... / load.ts
88.24%
83.33% (-2.38% 🔻)
100% 88.24%
🟢
... / models.ts
81.11% (-18.33% 🔻)
94.12% (+1.81% 🔼)
30.77% (-69.23% 🔻)
81.11% (-18.33% 🔻)
🟢
... / ProjectManifestVersioned.ts
82.19% (-2.74% 🔻)
88.89% (-11.11% 🔻)
61.54% (+3.21% 🔼)
82.19% (-2.74% 🔻)
🟡
... / models.ts
76.47% (-23.53% 🔻)
100%
0% (-100% 🔻)
76.47% (-23.53% 🔻)
🟡
... / load.ts
64.29% (+5.1% 🔼)
38.89% (-16.67% 🔻)
83.33% (+16.67% 🔼)
64.29% (+5.1% 🔼)
🟢
... / local-reader.ts
100% (+13.95% 🔼)
100% (+37.5% 🔼)
83.33% (-16.67% 🔻)
100% (+13.95% 🔼)
🟢
... / base.ts
86.92% (-11.08% 🔻)
87.5% (-12.5% 🔻)
44.44% (-35.56% 🔻)
86.92% (-11.08% 🔻)
🔴
... / models.ts
56.89% (-43.11% 🔻)
100%
0% (-100% 🔻)
56.89% (-43.11% 🔻)
🟢
... / NodeConfig.ts
88.72% (+0.11% 🔼)
79.71% (+0.08% 🔼)
85.19% (-0.86% 🔻)
88.72% (+0.11% 🔼)
🟢
... / ProjectUpgrade.service.ts
89.52% (+2.44% 🔼)
78.41% (-12.95% 🔻)
96% (+4.7% 🔼)
89.52% (+2.44% 🔼)
🟡
... / configure.module.ts
76.89% (-7.68% 🔻)
54.76% (-9.24% 🔻)
100%
76.89% (-7.68% 🔻)
🟢
... / db.module.ts
89.63% (+1.35% 🔼)
62.5% (-20.83% 🔻)
80%
89.63% (+1.35% 🔼)
🟢
... / migration.ts
86.56% (+4.28% 🔼)
82.61% (+2.88% 🔼)
90% (-0.48% 🔻)
86.56% (+4.28% 🔼)
🟢
... / sequelizeUtil.ts
81.08% (-9.99% 🔻)
69.23% (-1.14% 🔻)
62.5%
81.08% (-9.99% 🔻)
🟢
... / StoreOperations.ts
83.7% (-8.61% 🔻)
63.16% (-21.84% 🔻)
100%
83.7% (-8.61% 🔻)
🟢
... / base-block-dispatcher.ts
84.85% (+37.5% 🔼)
83.67% (-16.33% 🔻)
78.26% (+68.26% 🔼)
84.85% (+37.5% 🔼)
🟢
... / worker-block-dispatcher.ts
92.72% (+42.51% 🔼)
87.1% (-12.9% 🔻)
94.12% (+66.84% 🔼)
92.72% (+42.51% 🔼)
🟢
... / coreDictionary.ts
94.87% (-5.13% 🔻)
87.5% (-6.94% 🔻)
87.5% (-12.5% 🔻)
94.87% (-5.13% 🔻)
🟢
... / dictionary.service.ts
84.18% (-0.96% 🔻)
80% (-5.71% 🔻)
90.91%
84.18% (-0.96% 🔻)
🟢
... / dictionaryV1.ts
91.74% (-1.49% 🔻)
76.09% (-2.17% 🔻)
100%
91.74% (-1.49% 🔻)
🔴
... / ds-processor.service.ts
47.32% (-14.77% 🔻)
75%
63.64% (-23.86% 🔻)
47.32% (-14.77% 🔻)
🟢
... / dynamic-ds.service.ts
90.85% (+0.65% 🔼)
63.64% (-3.03% 🔻)
90% (+4.29% 🔼)
90.85% (+0.65% 🔼)
🟢
... / inMemoryCache.service.ts
100% 100%
75% (-25% 🔻)
100%
🔴
... / indexer.manager.ts
32.75% (-0.46% 🔻)
100%
10% (-2.5% 🔻)
32.75% (-0.46% 🔻)
🟢
... / PoiBlock.ts
80.65% (-17.74% 🔻)
57.89% (-38.66% 🔻)
75% (-25% 🔻)
80.65% (-17.74% 🔻)
🟡
... / poi.service.ts
68.28% (+44.36% 🔼)
57.69% (-42.31% 🔻)
88.89% (+60.32% 🔼)
68.28% (+44.36% 🔼)
🔴
... / store.ts
45.98% (+13.77% 🔼)
62.5% (-37.5% 🔻)
33.33% (+33.33% 🔼)
45.98% (+13.77% 🔼)
🔴
... / testing.service.ts
27.22% (-1.35% 🔻)
100% 0%
27.22% (-1.35% 🔻)
🟡
... / unfinalizedBlocks.service.ts
75.8% (-8.19% 🔻)
78.43% (-18.29% 🔻)
95.45% (+3.79% 🔼)
75.8% (-8.19% 🔻)
🟡
... / worker.builder.ts
79.15% (-0.04% 🔻)
65.38%
70.59% (-9.41% 🔻)
79.15% (-0.04% 🔻)
🟢
... / worker.service.ts
93.16% (+48.52% 🔼)
86.67% (-13.33% 🔻)
100% (+100% 🔼)
93.16% (+48.52% 🔼)
🔴
... / worker.ts
42.13% (-0.32% 🔻)
100% 0%
42.13% (-0.32% 🔻)
🟡
... / worker.unfinalizedBlocks.service.ts
64.91% (-35.09% 🔻)
100%
0% (-100% 🔻)
64.91% (-35.09% 🔻)
🔴
... / event.listener.ts
53.54% (-27.27% 🔻)
100%
0% (-25% 🔻)
53.54% (-27.27% 🔻)
🔴
... / health.controller.ts
55.17% 100%
0% (-50% 🔻)
55.17%
🔴
... / health.service.ts
51.32% (-6.22% 🔻)
100%
0% (-20% 🔻)
51.32% (-6.22% 🔻)
🟡
... / meta.service.ts
68.52% (-1.01% 🔻)
100% (+20% 🔼)
0% (-40% 🔻)
68.52% (-1.01% 🔻)
🔴
... / ready.controller.ts
56.52% 100%
0% (-50% 🔻)
56.52%
🟡
... / ready.service.ts
75% (-16.67% 🔻)
100%
0% (-66.67% 🔻)
75% (-16.67% 🔻)
🟢
... / blockHeightMap.ts
91.23% (-1.36% 🔻)
96.55% (-3.45% 🔻)
90% (+2.5% 🔼)
91.23% (-1.36% 🔻)
🟡
... / blocks.ts
69.7% (-30.3% 🔻)
84.62% (-4.27% 🔻)
75% (-25% 🔻)
69.7% (-30.3% 🔻)
🟡
... / project.ts
72.94% (-0.44% 🔻)
75.41% (+0.83% 🔼)
76.47% (-1.31% 🔻)
72.94% (-0.44% 🔻)
🟢
... / promise.ts
94.92% (+3.15% 🔼)
100% (+13.64% 🔼)
71.43% (-14.29% 🔻)
94.92% (+3.15% 🔼)
🟡
... / reindex.ts
73.33% (+39.29% 🔼)
10% (-90% 🔻)
100% (+100% 🔼)
73.33% (+39.29% 🔼)
🔴
... / yargs.ts
44.68% (-0.81% 🔻)
100% 14.29%
44.68% (-0.81% 🔻)
🟢
... / api.service.ts
85.75% (+2.24% 🔼)
78.33% (+6.11% 🔼)
80% (-6.67% 🔻)
85.75% (+2.24% 🔼)
🟢
... / apiPromise.connection.ts
80% (+10.92% 🔼)
61.54% (-18.46% 🔻)
66.67% (+23.81% 🔼)
80% (+10.92% 🔼)
🔴
... / index.ts
0% (-100% 🔻)
0% (-100% 🔻)
0% (-100% 🔻)
0% (-100% 🔻)
🟢
... / substrateDictionary.service.ts
93.52% (+2.95% 🔼)
38.46% (-34.27% 🔻)
100% (+20% 🔼)
93.52% (+2.95% 🔼)
🔴
... / types.ts
0% (-100% 🔻)
0% (-100% 🔻)
0% (-100% 🔻)
0% (-100% 🔻)
🟢
... / substrateDictionaryV1.ts
85.33% (-0.15% 🔻)
78.26% (+8.49% 🔼)
84.62% (+1.28% 🔼)
85.33% (-0.15% 🔻)
🟡
... / substrateDictionaryV2.ts
70.79% (-4.72% 🔻)
50% (-25% 🔻)
33.33%
70.79% (-4.72% 🔻)
🔴
... / indexer.manager.ts
47.96% (-9.58% 🔻)
100%
16.67% (+7.58% 🔼)
47.96% (-9.58% 🔻)
🟢
... / runtimeService.ts
95.29% (+3.09% 🔼)
81.82% (-7.07% 🔻)
100% (+20% 🔼)
95.29% (+3.09% 🔼)
🟡
... / types.ts
70.45% (-14.84% 🔻)
100% 0%
70.45% (-14.84% 🔻)
🟢
... / project.ts
88.73% (-0.16% 🔻)
68.18% 87.5%
88.73% (-0.16% 🔻)
🟢
... / buffer.ts
90.24% (-9.76% 🔻)
91.3% (-8.7% 🔻)
90.48% (+6.27% 🔼)
90.24% (-9.76% 🔻)
🟢
... / builder.ts
93.02% (+0.25% 🔼)
82.14% (-0.62% 🔻)
100%
93.02% (+0.25% 🔼)
🟢
... / entities.ts
82.67% (-5.65% 🔻)
80.31% (-5.77% 🔻)
100%
82.67% (-5.65% 🔻)
🟡
... / Bytes.ts
75% (+5% 🔼)
50% (-50% 🔻)
100%
75% (+5% 🔼)
🟢
... / u8aUtils.ts
88.89% (-11.11% 🔻)
50% (-50% 🔻)
100%
88.89% (-11.11% 🔻)

Test suite run success

702 tests passing in 116 suites.

Report generated by 🧪jest coverage report action from 17174d2

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (2)
packages/cli/CHANGELOG.md (2)

7-13: Make the Unreleased entries more actionable (mention MCP SDK version + user-visible impacts).

Consider specifying the pinned SDK version (e.g., “Pin @modelcontextprotocol/sdk to 1.24.3”) and, if relevant, briefly call out the user-visible behavior changes (e.g., tool key identifier format change) so readers can correlate upgrades with breakages/regressions.


8-12: Wording polish: use consistent tense (“Fixed …”, “Changed …”).

Minor, but “Update MCP SDK…” reads like an imperative. Consider “Updated MCP SDK and pinned version…” to match the style used elsewhere in this changelog.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 125c9d3 and 17174d2.

📒 Files selected for processing (1)
  • packages/cli/CHANGELOG.md (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: code-style
  • GitHub Check: Coverage report

@stwiname stwiname merged commit b7318da into main Dec 15, 2025
4 checks passed
@stwiname stwiname deleted the mcp-update branch December 15, 2025 01:15
@coderabbitai coderabbitai bot mentioned this pull request Dec 15, 2025
@backman1664
Copy link

interesting

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants